Computer Science 351.01

Artificial Intelligence

Spring 2008

 

INSTRUCTOR:   Tom Valente, Bagby 123, ext. 6210

 

MEETING TIMES:  MWF 1:30PM-2:20PM

 

OFFICE HOURS:     MWR 2:30PM-4:00PM

 

BOOKS:

            Artificial Intelligence, Stuctures and Strategies for Complex Problem Solving,

5th Edition by George F. Luger.

 

            LISP, 3rd Edition, by Patrick Henry Winston and Berthold Klaus Paul Horn.

 

COURSE DESCRIPTION:

Artificial Intelligence is a very broad area of Computer Science concerned with both creating programs that simulate what humans do when they are behaving “intelligently” and with using computer programs to help us better understand how the human brain works.   Not surprisingly, the study of artificial intelligence can take one into many different subfields:  machine vision, pattern recognition, robotics, natural language understanding, expert systems, game playing, theorem proving, machine learning, and planning, just to list a few.  In applications such as these, one has to have ways to represent “knowledge” as data.  Thus, computing with numbers is less important than computing with symbolic data such as words and sentences.  The programming languages Lisp and (to a lesser extent in this country) Prolog have been the main players in programming AI applications.  Lisp permits the programmer to interactively create and experiment with very flexible list structures “on the fly”.  The elements of these lists can be “symbols” or lists themselves. Because these lists are flexible, very intricate relationships between symbols can be represented by them.  We will take a good deal of time, especially in the first half of the semester, to master the Lisp language, so that we’ll be fluent by the time we get to studying Lisp programs that implement the algorithms discussed in the textbook.  During the first half of the semester, I hope to gently use Prolog programs to embellish and bring to life some examples in the textbook where knowledge is being represented using the language you learned in Discrete Mathematics, namely the language of predicate calculus.  Later in the semester, especially when planning and expert systems type examples are prevalent, we will spend more time actually studying the Prolog language.

 

Finally, it is reassuring to see that the data structures and algorithms we have studied in previous courses really are important in interesting application areas such as AI.  Indeed, you’ll see again structures such as lists and trees and graphs, along with various “search” algorithms and strategies that are needed for processing these data structures.

 

LINKS:

            AI Topics

 

            Alan Turing's 1950 Paper

            Do these pass Turing's test?

           

            A Java applet for the 15-puzzle

            The 8-puzzle

            Can you HEAR an 8-puzzle solution?

 

            Minimum edit distance demo

            Eight Queens (Wikipedia entry)

 

 

GRADING:

            Homework                                                      40%

            Exams                                                             30%     Feb 22nd, April 4th

            Final Presentation                                           20%

            Quizzes (programming languages)                  10%    

 

THE PLAN:  Cover as much as possible of Luger’s Chapters 1-6 and 8 and learn enough Lisp and, later, Prolog, to program some of the A.I. applications.

 

Week of                      Luger                          LISP

 

Jan 16                          Ch 1                            Ch 1

 

Jan 21                          Ch 2                            Ch 2, Ch 3

 

Jan 28                          Ch 2                            Ch 4, Ch 5

 

Feb 4                           Ch 3                            Ch 6

 

Feb 11                         Ch 3                            Ch 7, Ch 11

 

Feb 18                         Ch 4                            Ch 19                                     

                                                Test 1 Feb 22nd 

 

Feb 25                         Ch 4                            Ch 19

 

Mar 3                           Ch 4                            Ch 19

 

Mar 10                                     SPRING BREAK

 

Mar 17                         Ch 6                           

 

Mar 24                         Ch 6

 

Mar 31                         Ch 8, Ch 15 (PROLOG)        

Test 2 Apr 4th  

 

Apr 7                           Ch 8, Ch 15 (PROLOG)

 

Apr 14                         Ch 15 (PROLOG)

 

Apr 21                         Ch 15 (PROLOG)

 

Apr 28                         Ch 15 (PROLOG)

                                                Student Presentations